Kullanıcı giriş panel
64x64

eren

14.2.2021 00:00:00

Merhabalar,

c# öğrenmeye çalışıyorum. İnternetten izlediğim videoyla birebir ilerlerken kullandığım kod şöyle

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.OleDb;
namespace PTP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        //veritabanı dosya yolu ve provide belirleme
        OleDbConnection baglantim = new OleDbConnection("Provider=Microsoft.ACE.Oledb.12.0;Data Source=personel.accdb");

        //Formlar arası veri aktarımı değişkenleri
        public static string tcno, adi, soyadi, yetki;

        //yerel yani yalnızca bu formda geçerli olacak değişkenler
        int hak = 3; bool durum = false;

        private void Form1_Load(object sender, EventArgs e)
        {
            this.Text = "Kullanıcı girişi...";
            this.AcceptButton = button1; this.CancelButton = button2;
            label5.Text = Convert.ToString(hak);
            radioButton1.Checked = true;
            this.StartPosition = FormStartPosition.CenterScreen;
            this.FormBorderStyle = FormBorderStyle.FixedToolWindow;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (hak != 0)
            {
                baglantim.Open();
                OleDbCommand selectsorgu = new OleDbCommand("select * from kullanicilar", baglantim);
                OleDbDataReader kayitokuma = selectsorgu.ExecuteReader();
                while (kayitokuma.Read())
                {
                    if (radioButton1.Checked == true)
                    {
                        if (kayitokuma["kullaniciadi"].ToString() == textBox1.Text && kayitokuma["parola"].ToString() == textBox2.Text && kayitokuma["yetki"].ToString() == "Yönetici")
                        {
                            durum = true;
                            tcno = kayitokuma.GetValue(0).ToString();
                            adi = kayitokuma.GetValue(1).ToString();
                            soyadi = kayitokuma.GetValue(2).ToString();
                            yetki = kayitokuma.GetValue(3).ToString();
                            this.Hide();
                            Form2 frm2 = new Form2();
                            frm2.Show();
                            break;
                        }
                    }


                    if (radioButton2.Checked == true)
                    {
                        if (kayitokuma["kullaniciadi"].ToString() == textBox1.Text && kayitokuma["parola"].ToString() == textBox2.Text && kayitokuma["yetki"].ToString() == "Kullanıcı")
                        {
                            durum = true;
                            tcno = kayitokuma.GetValue(0).ToString();
                            adi = kayitokuma.GetValue(1).ToString();
                            soyadi = kayitokuma.GetValue(2).ToString();
                            yetki = kayitokuma.GetValue(3).ToString();
                            this.Hide();
                            Form3 frm3 = new Form3();
                            frm3.Show();
                            break;
                        }
                    }

                }
                if (durum == false)
                    hak--;
                   baglantim.Close();
            }    
            label5.Text = Convert.ToString(hak);
            if (hak == 0)
            {
                button1.Enabled = false;
                MessageBox.Show("Giriş hakkı kalmadı.", "Personel takip programı",
                MessageBoxButtons.OK, MessageBoxIcon.Error);
                this.Close();
            }
            
        }
        private void label2_Click(object sender, EventArgs e)
        {

        }
    }
}
 

Videodaki kişiyle birebir aynı olmasına rağmen kullanıcı adı ve şifreye ne yazarsam yazayım hatta hiçbir şey yazmasam bile yönetici seçiliyken form2 ye kullanıcı seçiliyken form3e atıyor. Access dosyasını debug klasörüne koydum. Nasıl bir yol izlemeliyim? şimdiden teşekkür ederim

Yorum yaz